package com.ruoyi.lvlian.dto;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.lvlian.domain.InvoiceInfo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

import com.ruoyi.common.core.annotation.Excel;
import lombok.ToString;
import org.springframework.boot.context.properties.bind.DefaultValue;
import org.springframework.web.bind.annotation.RequestParam;

@ApiModel(value = "完税信息", description = "发票信息")
@Data
@ToString
public class InvoiceInfoDto  {
    private String id;
    @ApiModelProperty(value = "购买方")
    private String buyerName;

    @ApiModelProperty(value = "销售方")// 同开票方
    private String sellerName;

    @ApiModelProperty(value = "发票号码")
    private String invoiceNum;

    @ApiModelProperty(value = "uid")
    private String uid;


    @ApiModelProperty(value = "税率" )
//    , required = true
    private String taxRate;
    /**
     * 开票日期-开始时间
     */
    @ApiModelProperty(value = "开票开始日期")
    private String startDate;

    /**
     * 开票日期-结束时间
     */
    @ApiModelProperty(value = "开票结束日期")
    private String endDate;

    @ApiModelProperty(value = "公司组织编码必填") // 注意required=true只是给Swagger看的 , required = true
    @NotNull(message = "公司组织编码不能为空")
    private String orgCode;

    private List<String> orgCodes;

    /** 交易流水号-一个回单可能对应多个入库 */
    @ApiModelProperty(value = "交易流水号- 根据支付查发票")
    private String paymentNum;

    @ApiModelProperty(value = "合同编号")
    private String contractNum;

    /** 入库单号-一次货运多次入库 */
    @ApiModelProperty(value = "入库单号-一次货运多次入库")
    private String inNum;
    @ApiModelProperty(value = "结算金额")
    private double settlementAmount;

    /** 出库单号-一次货运多次出库 */
    @ApiModelProperty(value = "出库单号-一次货运多次出库")
    private String outNum;

    private String paymentStatus;
    private String settlementStatus;
    private String logisticsStatus;
    @ApiModelProperty(value = "是否有图")
    private Boolean haveImg;

}